iT邦幫忙

2021 iThome 鐵人賽

DAY 27
0
Software Development

Blue Prism 精靈之手與神同行之防疫特助系列 第 27

Day27. Blue Prism進化中的寶可夢–BP增加穩定與彈性的調校

  • 分享至 

  • xImage
  •  

有一陣子流行的寶可夢Go的App尋寶遊戲,
吸引不少粉絲信徒的膜拜,
玩家們都希望自己手上的寶可夢能夠經由進化來加強戰鬥力,
可是要想進化就必須經歷不斷的挑戰、戰勝來提升經驗值,
經驗值越高就越來越天不怕地不怕的,
Blue Prism也是一樣的原理,
若只是把流程串好或許只能跑上幾遍就掛了,
但是在遇到狀況後BP的主人若能適當的調校,
過程中也像提升BP的經驗值一般讓BP越挫越勇,
越來越能應變各種突發的事件,
因此,當擁有了Blue Prism後可別串完流程就想天下無敵,
一定要在執行的歷程中調校找出最佳甚至提升「經驗值」的技巧,
讓Blue Prism能越來越強大且穩定。
https://ithelp.ithome.com.tw/upload/images/20210927/201411980iMSPrVf7d.png

(圖片節錄自App Store)

 前集提要

BP自動取號
(1)運用Application Modeller把應用程式的OrderConfirm與BP的關聯設定好,於擷取訂單資訊後將訂單編號篩選出來。

 本集預告

BP增加穩定與彈性的調校
(1)將每個Object Page另開一個Object Page新頁籤運用Page把各個流程納進來。
(2)執行過程會有一些不同的情境,因此需要多點偵測與設計讓流程持續穩定,應變各種例外狀況。

我們接著來看看「BP增加穩定與彈性的調校」如何作到吧!

1. 將Object Page的流程串起來
(1). 新增一個All的Object Page
在頁籤列上按下右鍵點擊New
https://ithelp.ithome.com.tw/upload/images/20210927/20141198LtJKo6Mzfe.png


(2). 輸入All,按下OK,新增一個Object Page
https://ithelp.ithome.com.tw/upload/images/20210927/201411985CVnhnksww.png

(3). 新增第1個流程01.Launch
A. 左方工具區圖示Page
選定:Create a reference to an existing page
https://ithelp.ithome.com.tw/upload/images/20210927/20141198KMDo7OlQhZ.png


B. Existing Pages選定01.Launch,按下Finish
https://ithelp.ithome.com.tw/upload/images/20210927/20141198zmlYw2yrUG.png
(4). 新增第2個流程02.Login
A. 左方工具區圖示Page
選定:Create a reference to an existing page
https://ithelp.ithome.com.tw/upload/images/20210927/20141198hwAQqFTlY9.png


B. Existing Pages選定02.Login,按下Finish
https://ithelp.ithome.com.tw/upload/images/20210927/20141198zOY71jHgAU.png
(5). 新增第3個流程03. Options
A. 左方工具區圖示Page
選定:Create a reference to an existing page
https://ithelp.ithome.com.tw/upload/images/20210927/20141198WvVCtOQw0r.png


B. Existing Pages選定0https://ithelp.ithome.com.tw/upload/images/20210927/20141198u4pEY4YIl3.png3. Options,按下Finish
https://ithelp.ithome.com.tw/upload/images/20210927/2014119884eQ4A3ZCG.png
(6). 新增第4個流程04. New Order
A. 左方工具區圖示Page
選定:Create a reference to an existing page
https://ithelp.ithome.com.tw/upload/images/20210927/20141198psh2C6ZTE5.png


B. Existing Pages選定04. New Order,按下Finish
https://ithelp.ithome.com.tw/upload/images/20210927/20141198uMO2254DbG.png
(7). 新增第5個流程05. GetOrderNo
A. 左方工具區圖示Page
選定:Create a reference to an existing page
https://ithelp.ithome.com.tw/upload/images/20210927/20141198doLg3QuCD6.png


B. Existing Pages選定05. GetOrderNo,按下Finish
https://ithelp.ithome.com.tw/upload/images/20210927/201411985g1Vrhnqit.png
(8). 將All頁內的流程項目串起來。
https://ithelp.ithome.com.tw/upload/images/20210927/20141198OfaxSwsnsh.png


2. 增加All流程可以看到訂單號碼的設定
(1). 對05. GetOrderNo頁的End屬性設定輸出OrderNO,按下OK
Name:OrderNo、 Data Type: Text、 Get Value From拖曳來自右方的Get OrderNo
https://ithelp.ithome.com.tw/upload/images/20210927/20141198AdW0VPepbN.png


(2). 對All頁設定05. GetOrderNo 的Output屬性,按下OK
Store In 按下左方的斜方塊,流程畫面將新增一個OrderNo的Data Item
https://ithelp.ithome.com.tw/upload/images/20210927/201411986raPWfv32Y.png

3. 執行流程:
(1). 若已執行過,建議先按下Reset按鈕(循環圖示),再按下執行圖示。
https://ithelp.ithome.com.tw/upload/images/20210927/20141198vuJK82nGMO.png

(2). 執行流程:
點擊左上角的三角形執行圖示,即開始執行流程。
https://ithelp.ithome.com.tw/upload/images/20210927/20141198tHZyD3izn4.png

(3). 檢視結果:
C. 執行完流程將開始擷取訂單資訊,並截斷資訊取出訂單號碼
https://ithelp.ithome.com.tw/upload/images/20210927/20141198XKpAQSY6sf.png

其實實際的執行狀況很多我們來列舉一下,順便作調校:
4. 還沒跑BP流程就已開啟應用軟體的錯誤
(1). 此時會出現以下錯誤畫面
表示應用軟體已啟動的錯誤。
https://ithelp.ithome.com.tw/upload/images/20210927/20141198WsctGr1is0.png

(2). 改善建議:
A. 新增Reader來讀取是否已經開啟應用軟體
a. Element拖曳來自左方的NorderSys、Data: 選擇Is Connected、Store In 按下左方的斜方塊產生Value from NorderSys的Flags
https://ithelp.ithome.com.tw/upload/images/20210927/20141198VGIqm5Iezh.png

B. 新增一個Decision1來判斷是否啟動應用軟體,或掠過。設定後按下OK
a. Expression內拖曳右方Flags分支下的Value from NorderSys。
https://ithelp.ithome.com.tw/upload/images/20210927/20141198gL2KZNk5x1.png

(3). 重新Link各個元件。
https://ithelp.ithome.com.tw/upload/images/20210927/20141198AgRxy7yTL5.png
執行後會發現,無論應用軟體是否已開啟,系統都能偵測並判斷後做適當的回應。

5. 最後未關閉應用軟體
(1). 此時頁面會停在如下畫面。
https://ithelp.ithome.com.tw/upload/images/20210927/20141198tHWlVptSR0.png

(2). 改善建議
https://ithelp.ithome.com.tw/upload/images/20210927/20141198p3eaGGgNgH.png

A. 新增一個Reader:設定Is Connected 旗標。
https://ithelp.ithome.com.tw/upload/images/20210927/20141198JaUEi06PrM.png

B. 新增一個Decision1:判斷應用軟體是否已關閉。
https://ithelp.ithome.com.tw/upload/images/20210927/20141198wP90FGSSOG.png

C. 新增一個Navigate4:作為若未關閉則啟動關閉terminate
https://ithelp.ithome.com.tw/upload/images/20210927/201411985346JvIunj.png

看到上面的設定後,
重新執行多次仍然可以正常執行,
所以流程的設計不是只有將流程依序排好就好,
其實真的要穩定還是需要一些內力等級的設定才有辦法執行的長長久久。

以下我們再來增長一下BP知識吧!

BP小教室:

元素參數(Element parameters)

具有動態屬性的應用程序元素必須在運行時為這些屬性提供值,以便可以在目標應用程序中識別這些元素。

使用表格
列出了動態屬性的名稱和數據類型,每行一個屬性。必須以表達式的形式為每個人提供一個值。這通常就像提供數據項>的值一樣簡單。在這種情況下,可以簡單地從數據項樹中拖動適當的數據項。由於您提供的值是 Blue Prism 表達式,因此您必須將任何文字文本字符串括在引號中。

您可以顯式測試該值是否相等,或者使用各種其他比較,例如“小於”和“大於”等(對於數字)、通配符比較 (對於文本)和“不等於”(對於任何數據類型) .

查找相同元素的出現
當您填寫或修改這些詳細信息時,您可能很想知道在其他地方使用了相同的元素,以便您可以以類似的方式更新這些事>件。

該元素的搜索功能是查找此類情況發生的最好方法。

提示
如果您在每個階段屬性表單中使用與動態參數值相同的信息,則明智的做法是將表達式放入計算階段,並將結果存儲在 >數據項中。然後應在表達式的位置提供數據項。這樣,如果您需要修改您的表達式,您只需要修改一次(即在計算階段),而不是在單獨的基礎上對每個屬性進行修改。

您必須確保考慮何時需要刷新數據項(通過再次運行計算階段),以便它包含最新信息。如果有多個與元素關聯的動態>參數,您可能希望將這些表達式數據項分組到一個集合中以保持整潔並避免數據項之間的混淆。

(以上小知識擷取自Blue Prism online help)


上一篇
Day26. Blue Prism取號一把罩–BP自動取得訂單編號
下一篇
Day28. Blue Prism最安全的管家 -BP自動登入Gmail
系列文
Blue Prism 精靈之手與神同行之防疫特助30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言